The present invention generally relates to software and firmware control of multifunction peripheral devices in a network through a server that connects to the network. More particularly, the present invention provides for the simultaneous control and resultant operation of the dual print and scan functions of a multifunction scan and print peripheral device in response to client requests over a network.
Scanners are becoming popular devices as images become a more common part of normal computer usage. These devices generally support the conversion of an image on paper to a usable data file. As with all computer equipment, one impediment to further use is cost, which is multiplied by the number of peripheral devices that a user needs to obtain inputs and outputs. Though peripherals are generally low cost devices, compared for example to highly expensive multifunction copiers which are sometimes connected to networks, it is still preferable to limit the number of peripherals through sharing over a network. This concern leads generally to the sharing of peripheral devices over a network, e.g., the common case where multiple users on a network share a printer. To this end, devices have been developed which combine functions previously handled by a dedicated device. These multifunction peripherals (MFPs) combine, for example, printing, scanning and other functions into a single low cost addressable device. Apart from cost, this also conserves the number of ports used by peripheral devices, which may be limited in a given network configuration.
A problem with sharing a device on the network is contention. Contention occurs when multiple users attempt to access the same device simultaneously. For example, two users may try to initiate a print from their local personal computers (PC) to the same network peripheral. Contention occurs since the peripheral can only handle one print request at a time. Generally, the end solution in contention resolution involves a compromise in allowing access to the particular peripheral being contended for.
These problems may be increased by conventional use of multifunction peripherals like combined scan and print peripherals. Scan jobs generate considerable data which may substantially delay printing by any device relying on the same peripheral for its printing service. Conventional separate print and scan servers provide no ability to combine effective management of the separate functions. As a result, a networked computer using a dedicated server device to connect the peripheral to a network port could not scan from their multifunction peripheral where the peripheral was served by a conventional network print server.
Accordingly, it is a primary object of the present invention to provide an improved network peripheral server which supports a simultaneous print and scan function of a capable multifunction peripheral being controlled by the server.
An additional object of the present invention is to provide an improved network peripheral server which maintains logically separate print and scan data flows between the server and the multifunction peripheral being controlled by the server.
Another object of the present invention is to provide an improved network peripheral server which supports multiple communication channels between the server and peripheral.
A further object of the present invention is to provide an improved network peripheral server which supports multiple and potentially different protocol multifunction peripherals and supports a simultaneous print and scan function from one or more of the multiple and potentially different protocol peripherals, and which achieves aforementioned objects of the invention for one or more of the multiple peripherals.
Still another object of the present invention is to provide an improved network peripheral server which supports a simultaneous print and scan from an attached peripheral capable of printing and scanning and which allocates logical print and scan channels to permit progress in both print and scan functions.
A still further object of the present invention is to provide an improved network peripheral server which supports a simultaneous print and scan from an attached peripheral capable of printing and scanning, provides for logically separate print and scan data flows, and reserves a pool of data buffers for each separate data channel.
Yet another object of the present invention is to provide such an improved network peripheral server achieving all or some of the aforementioned objects which can run on various network operating systems and with various peripheral protocols.
These and other objects are met or exceeded by the present network multifunction peripheral server. The server of the invention connects to a network through a network interface unit, preferably capable of communication via a plurality of predetermined network protocols. It includes one or more ports for connection to a multifunction peripheral through a communication link. Separate print and scan data flows are established for each port by the server. The server also establishes separate logical channels to the port through a protocol which allows multiple logical channels per communication link. Print and scan jobs are handled simultaneously for a single multifunction peripheral through separate print and scan data channels logically established by the server. A preferred embodiment alternates print and scan data packet exchange, using separate print and scan data queues for each multifunction peripheral port of the server. Additional preferred features include time out closing of established scan channels and client transmission failure closing of channels.